package com.ruoyi.gateway.domain;

import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 消息属性映射对象 iot_message_property_map
 *
 * @author 白向阳
 * @date 2025-09-28
 */
public class MessagePropertyMap extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** $column.columnComment */
    private Long id;

    /** 方向：up,down */
    @Excel(name = "方向：up,down")
    private String direction;

    /** 设备属性路径 */
    @Excel(name = "设备属性路径")
    private String devicePropertyPath;

    /** 平台属性路径 */
    @Excel(name = "平台属性路径")
    private String platformPropertyPath;

    /** 数据类型 */
    @Excel(name = "数据类型")
    private String dataType;

    /** 转换脚本 */
    @Excel(name = "转换脚本")
    private String transformScript;

    public void setId(Long id)
    {
        this.id = id;
    }

    public Long getId()
    {
        return id;
    }

    public void setDirection(String direction)
    {
        this.direction = direction;
    }

    public String getDirection()
    {
        return direction;
    }

    public void setDevicePropertyPath(String devicePropertyPath)
    {
        this.devicePropertyPath = devicePropertyPath;
    }

    public String getDevicePropertyPath()
    {
        return devicePropertyPath;
    }

    public void setPlatformPropertyPath(String platformPropertyPath)
    {
        this.platformPropertyPath = platformPropertyPath;
    }

    public String getPlatformPropertyPath()
    {
        return platformPropertyPath;
    }

    public void setDataType(String dataType)
    {
        this.dataType = dataType;
    }

    public String getDataType()
    {
        return dataType;
    }

    public void setTransformScript(String transformScript)
    {
        this.transformScript = transformScript;
    }

    public String getTransformScript()
    {
        return transformScript;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("direction", getDirection())
            .append("devicePropertyPath", getDevicePropertyPath())
            .append("platformPropertyPath", getPlatformPropertyPath())
            .append("dataType", getDataType())
            .append("transformScript", getTransformScript())
            .append("createTime", getCreateTime())
            .append("updateTime", getUpdateTime())
            .toString();
    }
}
